草庐IT

Android PlusOneButton 不初始化

全部标签

java - 依赖注入(inject)、初始化后的不变性

我希望能够指定一个对象的成员变量在对象被“初始化”后是不可变的,这对我来说意味着在它被注入(inject)任何依赖项之后,并且已经执行了它所需要的任何其他初始化操作只能在DI之后执行。是否有满足我兴趣的语言-以这种方式形式化DI、初始化并支持不变性?使它们成为语言的一部分也许是愚蠢的;也许不吧。我不确定。今天我用Java编程,但我不能像我想的那样经常使用“final”,因为这些阶段发生在构造函数完成执行之后。关于如何使用Java获得我想要的东西的任何建议?我想我可以让我的对象实现一个基类,以便这些阶段在构造函数完成之前发生,或者使用方面来做同样的事情。想法?

java - 使用空字符串初始化所有字符串成员

我想将对象的所有String成员设置为空字符串(如果它们为null)。伪代码:foreachmemberinobject{if(memberinstanceofStringandmember==null){member='';}}实现该目标的最简单方法是什么?我可以使用任何框架/工具吗?通过反射编写我自己的解决方案? 最佳答案 publicstaticvoidsetEmpty(Objectobject)throwsIllegalArgumentException,IllegalAccessException{Classclazz=o

java - 将哈希函数委托(delegate)给 hibernate 中未初始化的委托(delegate)会导致更改哈希代码

我对使用hibernate委托(delegate)给未初始化对象的hashCode()有问题。我的数据模型如下所示(以下代码经过高度修剪以强调问题并因此损坏,请勿复制!):classCompound{@FetchType.EAGERSetparts=newHashSet();StringsomeUniqueName;publicinthashCode(){finalintprime=31;intresult=1;result=prime*result+((getSomeUniqueName()==null)?0:getSomeUniqueName().hashCode());retur

java - Amazon Elasticache Auto Discovery - 客户端未初始化

我正在尝试使用AutoDiscovery测试Amazon的新Memcached客户端。我有一个可以使用XMemcached1.3.5以及标准SpyMemcached库连接到的memcached节点。我按照此处的说明进行操作:http://docs.amazonwebservices.com/AmazonElastiCache/latest/UserGuide/AutoDiscovery.html代码与示例几乎相同,并且是:StringconfigEndpoint=".rgcl8z.cfg.use1.cache.amazonaws.com";IntegerclusterPort=1121

Java数组对象初始化

我只想问,是否可以在一个命令中使用相同的构造函数初始化多个对象?代码示例:Tile[]tiles=newTile(5,5)[20];感谢回复。 最佳答案 据我所知不可能。代码Tile[]tiles=newTile[20];只是创建了一个引用数组。要填充数组,您应该创建一个Tile对象,然后将引用分配给数组的一个索引,例如:tiles[0]=newTile(5,5);如果指向同一个对象的数组的所有元素都可以,你可以简单地填充数组:Tiletiles=newTile[20];Arrays.fill(tiles,newTile(5,5))

java - 在不调用初始化程序的情况下创建对象实例

我正在尝试生成字节码,它将在没有代码初始化逻辑的情况下创建对象实例。其实我想重现generateSerializationConstructor行为。{mv=cw.visitMethod(ACC_PUBLIC,"newObjectInstance","()Ljava/lang/Object;",null,null);mv.visitCode();mv.visitTypeInsn(NEW,classNameInternal);mv.visitInsn(DUP);classNameInternal="java/lang/Object";mv.visitMethodInsn(INVOKESP

java - 为什么在 Java 中允许初始化对 Null 的引用?

在以下使用JDBC的示例中(尽管这个问题并不特定于JDBC):Connectionconn=null;try{.....DothenormalJDBCthinghere....}catch(SQLExceptionse){if(conn!=null){conn.close();}}如果我没有将conn初始化为null那么编译器会提示说在catchblock中我不能使用一个没有的引用被初始化。Java默认将对象引用初始化为null那么为什么我需要显式地将其初始化为null。如果编译器不喜欢以null开头的引用的原始值,为什么它甚至接受我的显式初始化?注意:我使用EclipseLuna作为

java - 了解 Spring 上下文初始化顺序

我有一组复杂的bean以及它们之间的依赖关系。所有bean都带有@Service、@Repository或@Controller注释,我使用@PostConstruct注释。存在一些循环依赖关系,但系统仍由Spring正确初始化。然后我添加了一个简单的Controller,它只依赖于其中一个服务。理论上,系统应该能够启动,因为理论上它可以先像以前一样设置系统,然后再设置新的Controller。但是Spring提示它无法设置上下文:创建名为“userService”的bean时出错:当前正在创建请求的bean:是否存在无法解析的循环引用?我能否以某种方式协助Spring如何对上下文初始

java - 初始化 C3P0 连接池需要 2 分钟

我无法理解为什么在我的Hibernate应用程序中初始化c3p0连接池需要2分钟。这是在我的Hibernate.cfg.xml中:org.postgresql.Driverorg.hibernate.dialect.PostgreSQLDialectorg.hibernate.cache.internal.NoCacheProviderthread1310300503000truefalsecreate连接设置是在构建session工厂时在我的HibernateUtil文件中设置的。当我测试中的第一个事务是开放式时,池就初始化了。之后连接和查询数据库就可以正常工作,它只会在下一行挂起一

java - 如何初始化对象数组?

我刚看了这个SOPost:然而,Columbiaprofessor'snotes按照下面的方式进行。见第9页。Foofoos=newFoo[12];哪种方式是正确的?他们似乎在说不同的话。特别是,在笔记版本中没有[]。 最佳答案 这根本不会在Java中编译(因为您将数组类型的值分配给非数组类型Foo的变量):Foofoos=newFoo[12];它被javac拒绝并出现以下错误(另请参阅:http://ideone.com/0jh9YE):test.java:5:error:incompatibletypesFoofoos=newF